package mx.itesm.papamastodon.dienosaurs;

import org.andengine.engine.camera.Camera;
import org.andengine.entity.scene.background.SpriteBackground;
import org.andengine.entity.sprite.ButtonSprite;
import org.andengine.entity.sprite.Sprite;
import org.andengine.input.touch.TouchEvent;
import org.andengine.opengl.util.GLState;

/**
 * Created by Papa Mastodon on 20/04/2015.
 */
public class EscenaInstrucciones3 extends EscenaBase {

    private Sprite spriteFondo;
    private ButtonSprite btn;

    @Override
    public void crearEscena() {

        spriteFondo = new Sprite(0, 0, admRecursos.regionFondoInst3, admRecursos.vbom) {
            @Override
            protected void preDraw(GLState pGLState, Camera pCamera) {
                super.preDraw(pGLState, pCamera);
                pGLState.enableDither();
            }
        };

        // Configuración de la imagen
        spriteFondo.setPosition(ControlJuego.ANCHO_CAMARA / 2, ControlJuego.ALTO_CAMARA / 2);

        btn= new ButtonSprite((ControlJuego.ANCHO_CAMARA / 2)+300, (ControlJuego.ALTO_CAMARA / 2)-150,
                admRecursos.regionBtnMenu2, admRecursos.vbom) {
            // Aquí el código que ejecuta el botón cuando es presionado
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent, float pTouchAreaLocalX, float pTouchAreaLocalY) {
                if (pSceneTouchEvent.isActionUp()) {
                    // Cambia a la escena de JUEGO
                    admEscenas.crearEscenaMenu();
                    admEscenas.setEscena(TipoEscena.ESCENA_MENU);
                    admEscenas.liberarEscenaInstrucciones3();
                }
                return super.onAreaTouched(pSceneTouchEvent, pTouchAreaLocalX, pTouchAreaLocalY);
            }
        };

        // Crea el fondo de la pantalla
        SpriteBackground fondo = new SpriteBackground(1, 0.5f, 0, spriteFondo);
        setBackground(fondo);
        setBackgroundEnabled(true);
        attachChild(btn);
        registerTouchArea(btn);

    }

    @Override
    public void onBackKeyPressed() {

        admEscenas.crearEscenaInstrucciones2();
        admEscenas.setEscena(TipoEscena.ESCENA_INSTRUCCIONES2);
        admEscenas.liberarEscenaInstrucciones3();

    }

    @Override
    public TipoEscena getTipoEscena() {
        return TipoEscena.ESCENA_INSTRUCCIONES3;
    }

    @Override
    public void liberarEscena() {
        this.detachSelf();
        this.dispose();
    }
}
